package com.hjm.project.agentRateInfo.mapper;


import com.hjm.project.agentRateInfo.domain.AgentRateInfo;

import java.util.List;

/**
 * 代理商费率模版Mapper接口
 *
 * @author Gdd
 */
public interface AgentRateInfoMapper {
    /**
     * 查询代理商费率模版
     *
     * @param id 代理商费率模版ID
     * @return 代理商费率模版
     */
    AgentRateInfo selectAgentRateInfoById(String id);

    /**
     * 查询代理商费率模版列表
     *
     * @param agentRateInfo 代理商费率模版
     * @return 代理商费率模版集合
     */
    List<AgentRateInfo> selectAgentRateInfoList(AgentRateInfo agentRateInfo);

    /**
     * 获取上级的费率模版
     * @param agentRateInfo
     * @return
     */
    List<AgentRateInfo> selectAgentModel(AgentRateInfo agentRateInfo);

    /**
     * 查询代理商费率模版列表
     *
     * @param agentRateInfo 代理商费率模版
     * @return 代理商费率模版查询一个结果
     */
    AgentRateInfo selectAgentRateInfoOne(AgentRateInfo agentRateInfo);

    /**
     * 新增代理商费率模版
     *
     * @param agentRateInfo 代理商费率模版
     * @return 结果
     */
    int insertAgentRateInfo(AgentRateInfo agentRateInfo);

    /**
     * 修改代理商费率模版
     *
     * @param agentRateInfo 代理商费率模版
     * @return 结果
     */
    int updateAgentRateInfo(AgentRateInfo agentRateInfo);

    int updateAgentRateInfoById(AgentRateInfo agentRateInfo);

    /**
     * 删除代理商费率模版
     *
     * @param id 代理商费率模版ID
     * @return 结果
     */
    int deleteAgentRateInfoById(Integer id);

    /**
     * 批量删除代理商费率模版
     *
     * @param agentNums 需要删除的数据ID
     * @return 结果
     */
    int deleteAgentRateInfoByIds(String[] agentNums);
    }
